1. Technical Field
The present invention relates to cloud based virtual networks, and more particularly, to a virtual machine replication scheme applicable to such networks.
2. Discussion of the Related Art
As enterprise workloads are migrated to the cloud, it is essential that hybrid and/or multi-cloud deployments are supported. However, enterprise workloads often contain servers or network components that act as choke points that may be tied to a single site and difficult to replicate. For example, many servers may communicate with a stateful firewall, dynamic host configuration protocol (DHCP) server, authentication server or file server. Servers on different clouds cannot communicate with these components locally, thereby causing significant traffic overhead between clouds or requiring the redesign of the application or component. FIGS. 1-3 exemplarily illustrate this scenario.
For example, FIG. 1 shows an enterprise workload built from a virtual network that includes virtual machines VM1-VM4 and a middlebox MB in a cloud computing environment 110. The middlebox MB may be a virtual machine that performs packet inspection, protocol acceleration, DHCP, authentication, etc. of traffic flowing between VM1-VM4, for example. The dashed lines between the virtual machines VM1 and VM2 and the middlebox MB illustrate traffic flowing from VM1 to VM2 and vice versa. The dashed lines between the virtual machines VM3 and VM4 and the middlebox MB illustrate traffic flowing from VM3 to VM4 and vice versa. FIG. 2 shows that even when the virtual machines VM3 and VM4 are moved to cloud computing environment 120, their traffic must still go through the middlebox MB in the cloud computing environment 110. FIG. 3 shows that the movement of the middlebox MB to the cloud computing environment 120 does not help much as traffic flow between VM1 and VM2 in the cloud computing environment 110 must still pass through the middlebox MB.
As can be seen, the placement of the middlebox MB in the cloud computing environment 110 or 120 can lead to a drop in performance of the virtual network. For example, in the case shown in FIG. 3, the traffic must leave the cloud computing environment 110 to be processed by the middlebox MB in the cloud computing environment 120. This transit takes time and affects latency. This transit also increases cost, since traffic leaving a cloud costs additional monies.